package com.irdstudio.basic.sequence.service;

/**
 * @description:Pattern字符串解析器
 * @date:2019年2月13日 下午5:20:42
 * @author:hengyh
 */
public interface PatternResolver {

	/**
     * 解析类似于$YYYY$$MM$$DD$$SEQ$的字符串(具体的pattern形式不定，根据你使用的序列实现即可)
     * @param patternStr
     * @return
     */
    PatternDescriptor resolve(String patternStr);
    
    /**
     * 解析类似于$YYYY$$MM$$DD$$SEQ$的字符串(具体的pattern形式不定，根据你使用的序列实现即可)
     * @param patternStr
     * @param seqLength
     */
    PatternDescriptor resolve(String patternStr, Integer seqLength);
    
    /**
     * @description:解析PatternDescriptor
     * @param unResolved 未解析的PatternDescriptor
     */
    PatternDescriptor resolve(PatternDescriptor unResolved);
}
